/*******************************************************************************
 * Copyright (c) 2011 - 2012 TXT e-solutions SpA
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * This work was performed within the IoT_at_Work Project
 * and partially funded by the European Commission's
 * 7th Framework Programme under the research area ICT-2009.1.3
 * Internet of Things and enterprise environments.
 *
 *
 * Authors:
 *     Cristoforo Seccia (TXT e-solutions SpA)
 *     Salvatore Piccione (TXT e-solutions SpA)
 *
 * Contributors:
 *      Domenico Rotondi (TXT e-solutions SpA)
 *******************************************************************************/
package it.txt.access.capability.revocation.wizard.panel.descriptor;

import java.util.ResourceBundle;

import it.txt.access.capability.revocation.wizard.Wizard;
import it.txt.access.capability.revocation.wizard.WizardPanelController;
import it.txt.access.capability.revocation.wizard.WizardPanelDescriptor;
import it.txt.access.capability.revocation.wizard.panel.controller.ControllerPanelKeystore;

/**
 *
 * @author Cristoforo Seccia (TXT e-solutions SpA)
 * @author Salvatore Piccione (TXT e-solutions SpA - salvatore.piccione AT network.txtgroup.com)
 */
public class DescriptorPanelKeystore extends WizardPanelDescriptor {

    protected static final String IDENTIFIER = "KEYSTORE_PANEL";

    protected static final String CANONICAL_NAME = ResourceBundle.getBundle("bundles/PanelKeystore").getString("title");

    private WizardPanelController controller;

    public DescriptorPanelKeystore(Wizard wizard, int myOrdinalNumber, int wizardLength){
        super(wizard, myOrdinalNumber, wizardLength);
    }

    @Override
    public String getIdentifier() {
        return IDENTIFIER;
    }
    
    @Override
    public String getNextIdentifier() {
        return DescriptorPanelAssertion.IDENTIFIER;
    }

    @Override
    public String getBackIdentifier() {
        return DescriptorPanelRevocationData.IDENTIFIER;
    }

    @Override
    public WizardPanelController getPanelController() {
        if(controller == null){
            controller = new ControllerPanelKeystore(getWizard(), getCompletedPercentage(), CANONICAL_NAME);
        }
        return controller;
    }

    @Override
    public String getCanonicalName() {
        return CANONICAL_NAME;
    }

    @Override
    public boolean isUserConfirmationRequired() {
        return false;
    }
}
